package com.xbang.attendance.service;

import java.io.File;
import java.util.List;
import java.util.Set;

import com.xbang.attendance.entity.order.DeliveryDetails;
import com.xbang.attendance.entity.stock.InventoryExchange;
import com.xbang.attendance.entity.system.Warehouse;

/**
 * @author huawei
 * @email alonelaval@gmail.com
 */
public interface MailService {
	/****
	 * 发送仓储商邮件
	 * @param wareHouseCode
	 * 					仓储商编码
	 * @param region
	 * 					仓储商地区
	 * @param wareHouseName
	 * 					仓储商名称
	 * @param ascCode
	 * 				维修站编码
	 * @param ascName
	 * 				维修站名称
	 * @param poNo
	 * 				po单号
	 * @param doNo
	 * 				do单号
	 * @param details
	 * 				产品明细
	 * @param to
	 * 				收件人
	 * @param toNickname
	 * 			    收件人昵称
	 * @param subject
	 * 				标题
	 * @param messageText
	 * 				邮件内容
	 * @throws Exception
	 */
	void send(String wareHouseCode,String region,String wareHouseName,
			String ascCode,String ascName,
			String poNo,String doNo,Set<DeliveryDetails> details,
			String to, String toNickname, String subject,String date) throws Exception;
	/***
	 * 发送出入库记录邮件
	 * @param inventoryExchanges
	 * @throws Exception
	 */
	void sendMail(List<InventoryExchange> inventoryExchanges,Warehouse warehouse)throws Exception;
	/***
	 * 发送邮件，外加附件
	 * @param to
	 * @param subject
	 * @param files
	 * @throws Exception
	 */
	void sendMail(String to,String toNickname,String messageText,String subject,List<File> files,String... carbonCopys)throws Exception;
}

